﻿function addOrEditContest(data) {
	if (refreshTab('addContest'))
		return;
	var nf = new Ext.form.NumberField({
				fieldLabel : 'CID',
				name : 'cid',
				anchor : '80%',
				maxLength : 10,
				allowBlank : false,
				allowDecimals : false,
				allowNegative : false,
				value : data.cid
			});
	var autoCid = new Ext.Button({
				text : '自动',
				anchor : '100%',
				handler : getAutoCid
			});

	var title = new Ext.form.TextField({
				fieldLabel : '标题',
				name : 'title',
				maxLength : 200,
				minLength : 6,
				allowBlank : false,
				value : data.title
			});
	var cidFieldSet = new Ext.form.FieldSet({
				title : '比赛描述',
				collapsible : true,
				defaults : {
					anchor : '95%'
				},
				items : [{
							layout : 'column',
							border : false,
							items : [{
										layout : 'form',
										columnWidth : .8,
										border : false,
										bodyStyle : 'padding-right:5px',
										items : nf
									}, {
										layout : 'form',
										columnWidth : .2,
										border : false,
										items : autoCid
									}]
						}, title]
			});
	var startTime = new Ext.ux.form.DateTimeField({
				fieldLabel : '开始时间',
				name : 'startTime',
				anchor : '95%',
				allowBlank : true,
				format : 'Y-m-d H:i:s',
				value : string2time(data.startTime)
			});
	var overTime = new Ext.ux.form.DateTimeField({
				fieldLabel : '结束时间',
				name : 'overTime',
				anchor : '95%',
				allowBlank : false,
				format : 'Y-m-d H:i:s',
				value : string2time(data.overTime)
			});
	var time = new Ext.form.FieldSet({
				title : '比赛时间',
				collapsible : true,
				defaults : {
					anchor : '95%'
				},
				items : [startTime, overTime]
			});

	var disabledCB = new Ext.form.Checkbox({
				boxLabel : '可用',
				name : "disabled",
				autoHeight : true,
				value : data.disabled
			});

	var publicCB = new Ext.form.Checkbox({
				boxLabel : '公开',
				name : "is_public",
				autoHeight : true,
				value : data.is_public
			});

	var contentTA = new Ext.form.TextArea({
				fieldLabel : '比赛简介',
				name : "_content",
				anchor : '95%',
				allowBlank : true,
				value : data._content
			});

	var detail = new Ext.form.FieldSet({
				title : '详细信息',
				collapsible : true,
				defaults : {
					anchor : '95%'
				},
				items : [{
							layout : 'column',
							border : false,
							items : [{
										layout : 'form',
										columnWidth : .5,
										border : false,
										bodyStyle : 'padding-right:5px',
										items : disabledCB
									}, {
										layout : 'form',
										columnWidth : .5,
										border : false,
										items : publicCB
									}]
						}, contentTA]
			});

	var submit = new Ext.Button({
				text : '提交',
				handler : submitContest
			});
	var reset = new Ext.Button({
				text : '置零',
				handler : reset
			})

	var toolbar = new Ext.Toolbar({
				items : [submit, reset]
			})
	var form = new Ext.form.FormPanel({
				id : 'addContest',
				title : '添加比赛',
				closable : true,
				region : 'center',
				loadMask : {
					msg : '载入中...'
				},
				viewConfig : {
					forceFit : true
				},
				labelAlign : 'right',
				items : [cidFieldSet, time, detail],
				fbar : toolbar
			});
	form.doLayout();
	addTab(form);

	getAutoCid();
	function submitContest() {
		var params = {
			disabled : !disabledCB.getValue(),
			is_public : publicCB.getValue()
		}
		if (!nf.isValid() || !title.isValid()) {
			alertx('请正确输入数据！');
			return;
		}
		ajaxform({
					url : url.addOrEditContest,
					form : form,
					params : params,
					success : function() {
						closeTab(form.getId());
						refreshContest(1);
					}
				})
	}

	function getAutoCid() {
		ajax({
					url : url.getAutoCid,
					success : function(obj) {
						nf.setValue(obj.cid);
						title.focus(true, 200);
					}
				})
	}

	function reset() {
		form.getForm().reset();
	}

}
